<!doctype html>
<html class="no-js" lang="">

<head>
  <title></title>
  <meta charset="utf-8">
  <script type="text/javascript" src="/js/dojo/dojo/dojo.js"></script>
</head>

<body>
  <input  id="btn" type="button" value="设置点击按钮"></input ></br>
  <input  id="btn1" type="button" value="监听方法"></input ></br>
  <input  id="btn2" type="button" value="订阅和发布"></input ></br>
  <!--
    dojo.byId    document.getElementById
    dojo.query   选择器查找元素
    dojo.body    document的body元素
    dojo.create  dojo.create方法创建一个元素
    dojo.destroy  从父元素中删除该元素，并删掉该元素的所有子元素
    dojo.empty   方法将删除掉所有子元素
    dojo.forEach   来访问数组或NodeList中的每一项，并提供相应的操作。
  -->

</body>
<script type="text/javascript" >
  dojo.addOnLoad(function () {
    dojo.create("div", { innerHTML: "Hello world!" }, dojo.body());
    function btnClick() {
      alert("我被点击了");
    }

    var btn = dojo.byId("btn");
    dojo.connect(btn, "onclick", btnClick);

    function sayHello() {
      alert("Hello ");
    }

    function sayWorld() {
      alert("world~");
    }

    var btn1 = dojo.byId("btn1");
    btn1.addEventListener("click", sayHello);
    dojo.connect("sayHello", sayWorld);



    //订阅MesagePublish主题
    dojo.subscribe("MessagePublish", function (msg) {
      alert(msg);
    });

    var btnPublish = dojo.byId("btnPublish");
    dojo.connect(btnPublish, "onclick", function () {
      dojo.publish("MessagePublish", "12312321");
    });

    // 如要取消一个订阅，需要使用dojo.unsubscribe方法，这个方法需要一个由dojo.subscribe返回的句柄，
    // 其处理方式和dojo.connect、dojo.disconnect 的方式一样。

  });

</script>
</body>
</html>
